FIG. 1 depicts telecommunications system 100 in the prior art. Telecommunications system 100 comprises telecommunications endpoints 101-1 through 101-M, wherein M is a positive integer; data-processing system 102; telecommunications network 103; and test-execution system 104, interconnected as shown.
Telecommunications endpoint 101-m, wherein m has a value between 1 and M, inclusive, is a device that is capable of enabling its user to communicate with one or more other users of endpoints in telecommunications system 100. For example, endpoint 101-1 is a telephone and can initiate a session with telephone endpoint 101-2 by using the Session Initiation Protocol (or “SIP”). In addition to initiating the session with endpoint 101-2, endpoint 101-1 might also initiate a session with a third endpoint, endpoint 101-3, in order to form a three-party conference call with endpoints 101-2 and 101-3.
Endpoint 101-m is also capable of receiving and transmitting test-related signals. One test-related signal might direct endpoint 101-m to perform a specific function. For example, endpoint 101-1 might receive a signal to dial a telephone number for initiating a session with endpoint 101-2. Another test-related signal might carry information to be used for generating a test result. For example, endpoint 101-2 might transmit a signal that indicates endpoint 101-1 is requesting the initiation of a session. Various equipment providers (e.g., Avaya, etc.) offer endpoints that are capable of handling test-related signals.
Data-processing system 102 is device that is capable of enabling communications, such as by setting up a call or a session, between one or more endpoints 101-1 through 101-M. In particular, data-processing system 102, acting as a proxy server, enables the initiation of a data exchange between two or more endpoints. During the initiation of a session, for example, data-processing system 102 receives messages from one or more endpoints and, as a proxy, acts on the received messages.
Telecommunications network 103 enables that sharing of data between devices that are connected to the network. For example, network 103 might comprise a local area network, such as the Ethernet. Similarly, network 103 might comprise a wide-area network where the endpoints are located miles apart. In telecommunications system 100, those connected devices include endpoints 101-1 through 101-M and data-processing system 103.
Test-execution system 104 is a device that is capable of executing test sequences for testing data-processing system 102. Test-execution system 104 communicates directly with data-processing system 102 by exchanging test-related signals in the course of testing data-processing system 102. In some test configurations, test-execution system 104 can also communicate with one or more endpoints 101-1 through 101-M, either through telecommunications network 103 or through direct pathways to the endpoints.
The problem with test-execution system 104 communicating directly with data-processing system 102 for the purpose of testing system 102 is that the very test signals that test-execution system 104 transmits to system 102 can potentially alter system 102's operational performance and perturb the results of one or more tests. Consider that in a true operating environment, data-processing system 102 interacts with one or more endpoints 101-1 through 101-M and not with test-execution system 104. Direct communication between systems 102 and 104 might have the effect of causing a particular test sequence to pass when, in fact, the sequence would have normally failed, or vice-versa. Moreover, it might not even be feasible for test-execution system 104 to be interfaced to data-processing system 102. For example, test-execution system 104 might have been designed by a first vendor (e.g., Avaya, etc.) to operate in accordance with a first protocol, while data-processing system 102 might have been designed by a second vendor (e.g., Cisco Systems, etc.) to operate in accordance with a second protocol that might be incompatible with the first. The second protocol might be incompatible with the first protocol due to, for example, different specification options implemented in the two systems. Therefore, a compatibility issue might exist between data-processing system 102 and test-execution system 104.
What is needed is a technique for testing a data-processing system, such as system 102, without some of the disadvantages in the prior art.